home *** CD-ROM | disk | FTP | other *** search
/ FishMarket 1.0 / FishMarket v1.0.iso / fishies / 001-025 / disk_005 / mandelbrotsrc / mand2.c < prev    next >
C/C++ Source or Header  |  1992-05-06  |  13KB  |  350 lines

  1.  
  2. /*
  3.                        MAND2.C - Menus
  4.              Mandelbrot Self-Squared Dragon Generator
  5.                     For the Commodore Amiga
  6.                          Version 2.01
  7.  
  8.              Copyright (C) 1985, Robert S. French
  9.             Vastly Enhanced by =RJ Mical=  1985/86
  10.             Copyright (C) 1986,  =Robert J. Mical=
  11.                  Placed in the Public Domain
  12.  
  13.  
  14. This program may be distributed free of charge as long as the above
  15. notice is retained.
  16.  
  17. */
  18.  
  19.  
  20. #include "mand.h"
  21.  
  22.  
  23. struct IntuiText ProjectText[PROJECT_COUNT] =
  24.    {
  25.       {
  26.       0, 1, JAM2, /* frontpen, backpen, drawmode */
  27.       1, 1,       /* left, top */
  28.       NULL,       /* font */
  29.       "Save Picture",
  30.       NULL,       /* next */
  31.       },
  32.     };
  33.  
  34.  
  35. struct IntuiText OptionsText[OPTIONS_COUNT] =
  36.    {
  37.       {
  38.       0, 1, JAM2, /* frontpen, backpen, drawmode */
  39.       1, 1,       /* left, top */
  40.       NULL,       /* font */
  41.       "1/16 size display",
  42.       NULL,       /* next */
  43.       },
  44.       {
  45.       0, 1, JAM2, /* frontpen, backpen, drawmode */
  46.       1, 1,       /* left, top */
  47.       NULL,       /* font */
  48.       "Full-size display",
  49.       NULL,       /* next */
  50.       },
  51.       {
  52.       0, 1, JAM2, /* frontpen, backpen, drawmode */
  53.       1, 1,       /* left, top */
  54.       NULL,       /* font */
  55.       "Redisplay",
  56.       NULL,       /* next */
  57.       },
  58.       {
  59.       0, 1, JAM2, /* frontpen, backpen, drawmode */
  60.       1, 1,       /* left, top */
  61.       NULL,       /* font */
  62.       "Play With Colors",
  63.       NULL,       /* next */
  64.       },
  65.       {
  66.       0, 1, JAM2, /* frontpen, backpen, drawmode */
  67.       1, 1,       /* left, top */
  68.       NULL,       /* font */
  69.       "Stop",
  70.       NULL,       /* next */
  71.       },
  72.       {
  73.       0, 1, JAM2, /* frontpen, backpen, drawmode */
  74.       1, 1,       /* left, top */
  75.       NULL,       /* font */
  76.       "Close display",
  77.       NULL,       /* next */
  78.       },
  79.     };
  80.  
  81. struct IntuiText ZoomText[ZOOM_COUNT] =
  82.    {
  83.       {
  84.       0, 1, JAM2, /* frontpen, backpen, drawmode */
  85.       1, 1,       /* left, top */
  86.       NULL,       /* font */
  87.       "Set Zoom Frame Center",
  88.       NULL,       /* next */
  89.       },
  90.       {
  91.       0, 1, JAM2, /* frontpen, backpen, drawmode */
  92.       1, 1,       /* left, top */
  93.       NULL,       /* font */
  94.       "Set Zoom Frame Size",
  95.       NULL,       /* next */
  96.       },
  97.       {
  98.       0, 1, JAM2, /* frontpen, backpen, drawmode */
  99.       1, 1,       /* left, top */
  100.       NULL,       /* font */
  101.       "Set Zoom Frame Proportional",
  102.       NULL,       /* next */
  103.       },
  104.       {
  105.       0, 1, JAM2, /* frontpen, backpen, drawmode */
  106.       1, 1,       /* left, top */
  107.       NULL,       /* font */
  108.       "Zoom to Current Frame",
  109.       NULL,       /* next */
  110.       },
  111.       {
  112.       0, 1, JAM2, /* frontpen, backpen, drawmode */
  113.       1, 1,       /* left, top */
  114.       NULL,       /* font */
  115.       "Zoom In x 10",
  116.       NULL,       /* next */
  117.       },
  118.       {
  119.       0, 1, JAM2, /* frontpen, backpen, drawmode */
  120.       1, 1,       /* left, top */
  121.       NULL,       /* font */
  122.       "Zoom Out x 2",
  123.       NULL,       /* next */
  124.       },
  125.       {
  126.       0, 1, JAM2, /* frontpen, backpen, drawmode */
  127.       1, 1,       /* left, top */
  128.       NULL,       /* font */
  129.       "Zoom Out x 10",
  130.       NULL,       /* next */
  131.       },
  132.     };
  133.  
  134.  
  135. struct MenuItem ProjectItems[PROJECT_COUNT] =
  136.    {
  137.       {
  138.       NULL,                            /* next menuitem */
  139.       0, ITEM_HEIGHT * 0,              /* select box left, top */
  140.       PROJECT_WIDTH, ITEM_HEIGHT,      /* select box width, height */
  141.       ITEMTEXT | COMMSEQ | ITEMENABLED | HIGHCOMP, /* flags */
  142.       0,                               /* mutual exclude */
  143.       (APTR)&ProjectText[0],           /* text */
  144.       NULL,                            /* select */
  145.       'S',                             /* command */
  146.       NULL,                            /* next item */
  147.       NULL,                            /* next select */
  148.       },
  149.    };
  150.  
  151.  
  152. struct MenuItem OptionsItems[OPTIONS_COUNT] =
  153.    {
  154.       {
  155.       &OptionsItems[1],                /* next menuitem */
  156.       OPTIONS_LEFT, ITEM_HEIGHT * 0,   /* select box left, top */
  157.       OPTIONS_WIDTH, ITEM_HEIGHT,      /* select box width, height */
  158.       ITEMTEXT | COMMSEQ | ITEMENABLED | HIGHCOMP, /* flags */
  159.       0,                               /* mutual exclude */
  160.       (APTR)&OptionsText[0],           /* text */
  161.       NULL,                            /* select */
  162.       'Q',                             /* command */
  163.       NULL,                            /* next item */
  164.       NULL,                            /* next select */
  165.       },
  166.       {
  167.       &OptionsItems[2],                /* next menuitem */
  168.       OPTIONS_LEFT, ITEM_HEIGHT * 1,   /* select box left, top */
  169.       OPTIONS_WIDTH, ITEM_HEIGHT,      /* select box width, height */
  170.       ITEMTEXT | COMMSEQ | ITEMENABLED | HIGHCOMP, /* flags */
  171.       0,                               /* mutual exclude */
  172.       (APTR)&OptionsText[1],           /* text */
  173.       NULL,                            /* select */
  174.       'F',                             /* command */
  175.       NULL,                            /* next item */
  176.       NULL,                            /* next select */
  177.       },
  178.       {
  179.       &OptionsItems[3],                /* next menuitem */
  180.       OPTIONS_LEFT, ITEM_HEIGHT * 2,   /* select box left, top */
  181.       OPTIONS_WIDTH, ITEM_HEIGHT,      /* select box width, height */
  182.       ITEMTEXT | COMMSEQ | ITEMENABLED | HIGHCOMP, /* flags */
  183.       0,                               /* mutual exclude */
  184.       (APTR)&OptionsText[2],           /* text */
  185.       NULL,                            /* select */
  186.       'R',                             /* command */
  187.       NULL,                            /* next item */
  188.       NULL,                            /* next select */
  189.       },
  190.       {
  191.       &OptionsItems[4],                /* next menuitem */
  192.       OPTIONS_LEFT, ITEM_HEIGHT * 3,   /* select box left, top */
  193.       OPTIONS_WIDTH, ITEM_HEIGHT,      /* select box width, height */
  194.       ITEMTEXT | ITEMENABLED | HIGHCOMP, /* flags */
  195.       0,                               /* mutual exclude */
  196.       (APTR)&OptionsText[3],           /* text */
  197.       NULL,                            /* select */
  198.       NULL,                             /* command */
  199.       NULL,                            /* next item */
  200.       NULL,                            /* next select */
  201.       },
  202.       {
  203.       &OptionsItems[5],                /* next menuitem */
  204.       OPTIONS_LEFT, ITEM_HEIGHT * 4,   /* select box left, top */
  205.       OPTIONS_WIDTH, ITEM_HEIGHT,      /* select box width, height */
  206.       ITEMTEXT | ITEMENABLED | HIGHCOMP, /* flags */
  207.       0,                               /* mutual exclude */
  208.       (APTR)&OptionsText[4],           /* text */
  209.       NULL,                            /* select */
  210.       NULL,                            /* command */
  211.       NULL,                            /* next item */
  212.       NULL,                            /* next select */
  213.       },
  214.       {
  215.       NULL,                            /* next menuitem */
  216.       OPTIONS_LEFT, ITEM_HEIGHT * 5,   /* select box left, top */
  217.       OPTIONS_WIDTH, ITEM_HEIGHT,      /* select box width, height */
  218.       ITEMTEXT | COMMSEQ | ITEMENABLED | HIGHCOMP, /* flags */
  219.       0,                               /* mutual exclude */
  220.       (APTR)&OptionsText[5],           /* text */
  221.       NULL,                            /* select */
  222.       'C',                             /* command */
  223.       NULL,                            /* next item */
  224.       NULL,                            /* next select */
  225.       },
  226.    };
  227.  
  228.  
  229. struct MenuItem ZoomItems[ZOOM_COUNT] =
  230.    {
  231.       {
  232.       &ZoomItems[1],                   /* next menuitem */
  233.       ZOOM_LEFT, ITEM_HEIGHT * 0,      /* select box left, top */
  234.       ZOOM_WIDTH, ITEM_HEIGHT,         /* select box width, height */
  235.       ITEMTEXT | ITEMENABLED | HIGHCOMP, /* flags */
  236.       0,                               /* mutual exclude */
  237.       (APTR)&ZoomText[0],              /* text */
  238.       NULL,                            /* select */
  239.       NULL,                            /* command */
  240.       NULL,                            /* next item */
  241.       NULL,                            /* next select */
  242.       },
  243.       {
  244.       &ZoomItems[2],                   /* next menuitem */
  245.       ZOOM_LEFT, ITEM_HEIGHT * 1,      /* select box left, top */
  246.       ZOOM_WIDTH, ITEM_HEIGHT,         /* select box width, height */
  247.       ITEMTEXT | ITEMENABLED | HIGHCOMP, /* flags */
  248.       0,                               /* mutual exclude */
  249.       (APTR)&ZoomText[1],              /* text */
  250.       NULL,                            /* select */
  251.       NULL,                            /* command */
  252.       NULL,                            /* next item */
  253.       NULL,                            /* next select */
  254.       },
  255.       {
  256.       &ZoomItems[3],                   /* next menuitem */
  257.       ZOOM_LEFT, ITEM_HEIGHT * 2,      /* select box left, top */
  258.       ZOOM_WIDTH, ITEM_HEIGHT,         /* select box width, height */
  259.       ITEMTEXT | ITEMENABLED | HIGHCOMP, /* flags */
  260.       0,                               /* mutual exclude */
  261.       (APTR)&ZoomText[2],              /* text */
  262.       NULL,                            /* select */
  263.       NULL,                            /* command */
  264.       NULL,                            /* next item */
  265.       NULL,                            /* next select */
  266.       },
  267.       {
  268.       &ZoomItems[4],                   /* next menuitem */
  269.       ZOOM_LEFT, ITEM_HEIGHT * 3,      /* select box left, top */
  270.       ZOOM_WIDTH, ITEM_HEIGHT,         /* select box width, height */
  271.       ITEMTEXT | ITEMENABLED | HIGHCOMP, /* flags */
  272.       0,                               /* mutual exclude */
  273.       (APTR)&ZoomText[3],              /* text */
  274.       NULL,                            /* select */
  275.       NULL,                            /* command */
  276.       NULL,                            /* next item */
  277.       NULL,                            /* next select */
  278.       },
  279.       {
  280.       &ZoomItems[5],                   /* next menuitem */
  281.       ZOOM_LEFT, ITEM_HEIGHT * 4,      /* select box left, top */
  282.       ZOOM_WIDTH, ITEM_HEIGHT,         /* select box width, height */
  283.       ITEMTEXT | ITEMENABLED | HIGHCOMP, /* flags */
  284.       0,                               /* mutual exclude */
  285.       (APTR)&ZoomText[4],              /* text */
  286.       NULL,                            /* select */
  287.       NULL,                            /* command */
  288.       NULL,                            /* next item */
  289.       NULL,                            /* next select */
  290.       },
  291.       {
  292.       &ZoomItems[6],                   /* next menuitem */
  293.       ZOOM_LEFT, ITEM_HEIGHT * 5,      /* select box left, top */
  294.       ZOOM_WIDTH, ITEM_HEIGHT,         /* select box width, height */
  295.       ITEMTEXT | ITEMENABLED | HIGHCOMP, /* flags */
  296.       0,                               /* mutual exclude */
  297.       (APTR)&ZoomText[5],              /* text */
  298.       NULL,                            /* select */
  299.       NULL,                            /* command */
  300.       NULL,                            /* next item */
  301.       NULL,                            /* next select */
  302.       },
  303.       {
  304.       NULL,                            /* next menuitem */
  305.       ZOOM_LEFT, ITEM_HEIGHT * 6,      /* select box left, top */
  306.       ZOOM_WIDTH, ITEM_HEIGHT,         /* select box width, height */
  307.       ITEMTEXT | ITEMENABLED | HIGHCOMP, /* flags */
  308.       0,                               /* mutual exclude */
  309.       (APTR)&ZoomText[6],              /* text */
  310.       NULL,                            /* select */
  311.       NULL,                            /* command */
  312.       NULL,                            /* next item */
  313.       NULL,                            /* next select */
  314.       },
  315.    };
  316.  
  317.  
  318. struct Menu MainMenu[MENU_COUNT] =
  319.    {
  320.       {
  321.       &MainMenu[1],                    /* next menu */
  322.       5, 0,                            /* select box left, top */
  323.       70, 8,                           /* select box width, height */
  324.       MENUENABLED,                     /* flags */
  325.       "Project",                       /* text */
  326.       &ProjectItems[0],                /* first item */
  327.       0, 0, 0, 0,                      /* for the mystery variables */
  328.       },
  329.       {
  330.       &MainMenu[2],                    /* next menu */
  331.       70 + 5, 0,                       /* select box left, top */
  332.       70, 8,                           /* select box width, height */
  333.       MENUENABLED,                     /* flags */
  334.       "Display",                       /* text */
  335.       &OptionsItems[0],                /* first item */
  336.       0, 0, 0, 0,                      /* for the mystery variables */
  337.       },
  338.       {
  339.       NULL,                            /* next menu */
  340.       70 + 70 + 5, 0,                  /* select box left, top */
  341.       70, 8,                           /* select box width, height */
  342.       MENUENABLED,                     /* flags */
  343.       "Zoom",                          /* text */
  344.       &ZoomItems[0],                   /* first item */
  345.       0, 0, 0, 0,                      /* for the mystery variables */
  346.       },
  347.    };
  348.  
  349.  
  350.